import { post } from '@/utils/http'

// 供应商相关 API（手动拼接完整后端地址+上下文）
export function getSupplierListAPI(params) {
    // 构造符合后端SupplierInfoBO格式的请求体
    const requestBody = {
        pageNo: params.pageNo,
        pageSize: params.pageSize
    };
    
    // 只有当keyword存在且不为空时才添加到请求体中
    if (params.keyword) {
        requestBody.keyword = params.keyword;
    }
    
    return post("http://localhost:6004/product-client/cms/supplierInfo/queryPageList", requestBody);
}

export function updateSupplierStatusAPI(data) {
    return post("http://localhost:6004/product-client/cms/supplierInfo/updateStatus", data);
}

export function deleteSupplierAPI(data) {
    return post("http://localhost:6004/product-client/cms/supplierInfo/delete", data);
}

export function updateSupplierAPI(data) {
    return post("http://localhost:6004/product-client/cms/supplierInfo/update", data);
}

export function addSupplierAPI(data) {
    return post("http://localhost:6004/product-client/cms/supplierInfo/insert", data);
}
// 根据供应商ID获取详细信息
export function getSupplierByIdAPI(id) {
  return post(`http://localhost:6004/product-client/cms/supplierInfo/get?id=${id}`);
}
// 通过供应商名称精确查询
export function getSupplierByNameExactAPI(name) {
    return post("http://localhost:6004/product-client/cms/supplierInfo/queryPageList", {
        pageNo: 1,
        pageSize: 10,
        bo: {
            supplierName: name // 精确匹配供应商名称
        }
    });
}

// 1. 获取所有有效供应商（用于产品新增/编辑的下拉菜单）
export function getAllValidSuppliersAPI() {
  return post("http://localhost:6004/product-client/cms/supplierInfo/queryPageList", {
    pageNo: 1,        // 第1页
    pageSize: 1000,   // 足够大的页容量，覆盖所有有效供应商
    bo: {}            // 空筛选条件，获取全部有效数据
  });
}


// 产品相关 API（同理拼接完整路径）
export function getProductListAPI(params) {
  // 构造符合后端ProductInfoBO格式的请求体
  const requestBody = {
    pageNo: params.pageNo,
    pageSize: params.pageSize
  };
  
  // 只有当搜索条件存在时才添加bo对象
  if (params.bo) {
    requestBody.bo = params.bo;
  }
  
  console.log('发送POST请求到产品列表API:', "http://localhost:6004/product-client/cms/productInfo/queryPageList");
  console.log('请求体数据:', requestBody);
  
  // 确保使用POST方法发送数据
  return post("http://localhost:6004/product-client/cms/productInfo/queryPageList", requestBody);
}
// 根据产品ID获取详细信息
export function getProductByIdAPI(id) {
  return post(`http://localhost:6004/product-client/cms/productInfo/get?id=${id}`);
}
// 通过产品名称精确查询
export function getProductByNameExactAPI(name) {
  return post("http://localhost:6004/product-client/cms/productInfo/queryPageList", {
    pageNo: 1,
    pageSize: 10,
    bo: {
      productName: name // 精确匹配产品名称
    }
  });
}
export function updateProductStatusAPI(data) {
  return post("http://localhost:6004/product-client/cms/productInfo/updateStatus", data);
}

export function deleteProductAPI(id) {
  return post("http://localhost:6004/product-client/cms/productInfo/delete", { id });
}

// 新增产品相关API
export function addProductAPI(data) {
  return post("http://localhost:6004/product-client/cms/productInfo/insert", data);
}

export function updateProductAPI(data) {
  return post("http://localhost:6004/product-client/cms/productInfo/update", data);
}


// 产品分类相关 API（同理拼接完整路径）
export function getProductCategoryListAPI(params) {
  return post("http://localhost:6004/product-client/cms/productCategory/queryPageList", params); 
}

export function updateProductCategoryStatusAPI(data) {
  return post("http://localhost:6004/product-client/cms/productCategory/updateStatus", data); 
}

export function deleteProductCategoryAPI(id) {
  // 使用更新状态的方式实现删除（软删除）
  return updateProductCategoryStatusAPI({
    id: id,
    status: 2
  });
}

// 新增产品分类
export function addProductCategoryAPI(data) {
  return post("http://localhost:6004/product-client/cms/productCategory/insert", data);
}

// 修改产品分类
export function updateProductCategoryAPI(data) {
  return post("http://localhost:6004/product-client/cms/productCategory/update", data);
}

// 根据ID获取产品分类详情
export function getProductCategoryByIdAPI(id) {
  return post("http://localhost:6004/product-client/cms/productCategory/get", { id });
}

// 1. 获取所有有效产品类别（用于产品新增/编辑的下拉菜单）
// 逻辑：pageNo=1（第1页）、pageSize=1000（覆盖所有有效类别），空筛选条件（获取全部）
export function getAllValidProductCategoriesAPI() {
  return post("http://localhost:6004/product-client/cms/productCategory/queryPageList", {
    pageNo: 1,          // 固定第1页
    pageSize: 1000,     // 足够大的页容量，确保加载所有有效类别
    bo: { status: 1 }   // 可选：仅加载"启用"状态的类别（避免用户选择禁用类别）
  });
}






